﻿
IF  EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[sproc_GetRoleRightList]') AND type in (N'P', N'PC'))
    DROP PROCEDURE [dbo].[sproc_GetRoleRightList];
GO
CREATE PROCEDURE [dbo].[sproc_GetRoleRightList]
    @roleid int
/*

============================================================
功能:    得到角色@RoleID的权限列表
参数:
    @roleid int        :    角色ID
============================================================

*/
AS
BEGIN

set nocount on;

SELECT
        a.rule_id,
        f.proc_name,
        f.proc_desc,
        b.role_name,
        d.classname,
        d.classid
    FROM
        dbo.UDS_Assign_Rule a
        inner join dbo.uds_role b on a.role_id = b.role_id
        inner join dbo.uds_proc f on f.proc_id = a.act_id
        left outer join dbo.uds_class d on a.team_id = d.classid
    WHERE
        a.based_on = 3 /* role */
        and b.role_id = @roleid
    ORDER BY
        a.rule_id

END
GO
